Battery life is a chief consideration in mobile computing device design. Various power signal schemes have been used and employed to achieve longer battery lives. Today, processors, systems-on-a-chip (SOCs) and other components in mobile computing devices often include power management capabilities that include the ability to place themselves into reduced power consumption states. For example, many processors can now place themselves in deep sleep states which include C-states C-8, C9 and C10. One problem associated with the use of such capabilities in devices is that other components in the platforms in which they reside are not aware that such devices have been powered down. Because they are not aware that such devices are powered down, these other components often send requests or attempt to communicate with these powered down devices. When this occurs, the powered down devices must wake up, respond to any requests, and then return to the powered down state.
Platform Environment Control Interface (PECI) is an external standard interface used by a number of computer systems manufactured by Original Equipment Manufacturers (EOMs) today. This interface gives OEMs ability to monitor and control the platform thermals, power, and additional items, via an entity called an Embedded Controller (EC). The PECI protocol is often used to obtain status information from the processor. At times, the EC may want to obtain multiple (e.g., five, ten, etc.) pieces of information from the processor. When this occurs, for each of the desired pieces of information, the EC sends a request to the processor. If the processor is in a sleep state, the processor must wake-up, restore the processor context, handle the request, send a response to the request, store the processor context, and thereafter power itself down. However, because there are often multiple pieces of information that are desired, the processor is constantly repeating this process of awakening out of the sleep state to handle each request individually and then returning to the sleep state. This is detrimental to overall performance of the processor. This problem has been compounded by the addition of deep C-states, referred to as C8, C9, C10, in which a Power Control Unit (PCU or P-Unit) in the processor responsible for power management is turned off. When that occurs, using PECI requires a platform wake event in order to serve the request, which has a high energy cost. As a result, OEMs are reluctant to use the PECI interface, because lowering the control-loop rate in order to reduce the energy cost hurts the platform performance and efficiency on high-power scenarios.
Some solutions to the problems above include providing physical signals (Deep Sleep, Deeper Sleep) that could be routed to the EC and used to determine if the processor is at deep C-states. Physical signals are an expensive resource and are not scalable to the increased number of sleep states. Therefore, such solutions are not desirable.